how to get your first software engineer job